package api;

import com.fasterxml.jackson.databind.ObjectMapper;
import model.Company;
import model.DBUtil;
import model.Guser;
import model.Puser;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

@WebServlet("/api/geren.json")
public class gerenxinxi extends HttpServlet {
    private final ObjectMapper objectMapper = new ObjectMapper();

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("utf-8");
        HttpSession session = req.getSession();
        Puser currentUser = (Puser) session.getAttribute("pcurrentUser");
        Integer puid = currentUser.puid;
        List<Puser> companyList = new ArrayList<>();
        Object result;
        result = new Object() {
            public Object data = companyList;
        };
        try (Connection c = DBUtil.getConnection()) {
            String sql = "SELECT * FROM puser WHERE puid = ?  ORDER BY puid  DESC";
            try (PreparedStatement s = c.prepareStatement(sql)) {
                s.setInt(1,puid);
                try (ResultSet rs = s.executeQuery()) {
                    while (rs.next()) {
                            Puser puser = new Puser();
                        puser.pusername = rs.getString("pusername");
                        puser.phone = rs.getString("phone");
                       puser.email = rs.getString("email");

                        companyList.add(puser);
                    }
                }
            }
        } catch (SQLException exception) {
            exception.printStackTrace();
        }
        String json = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(result);
        resp.setCharacterEncoding("utf-8");
        resp.setContentType("application/json");
        resp.getWriter().println(json);
    }
}
